/*
 * author      : dormi330
 * date        : 2018/6/24
 * project     : mybatis
 * description : 交易聚合接口定义
 */

package com.deep.trade.order;

import com.deep.trade.order.dto.*;

import java.util.List;

public interface OrderFacade {

    // 创建订单
    String placeOrder(InDtoPlaceOrder inDtoPlaceOrder) throws Exception;

    // 审核订单
    void auditTradeOrder(InDtoAuditOrder inDtoAuditOrder) throws Exception;

    // 取消订单
    void cancelTradeOrder(InDtoCancelOrder inDtoCancelOrder) throws Exception;

    // 删除订单
    void deleteTradeOrder(InDtoCancelOrder inDtoCancelOrder) throws Exception;

    // 订单合并支付
    void payOrderSummary(InDtoPayOrderSummary inDtoPayOrderSummary) throws Exception;

    // 支付TradeOrder
    void payTradeOrder(InDtoPayTradeOrder inDtoPayTradeOrder) throws Exception;

    // 添加多个包裹信息
    void addParcel(List<InDtoEachParcel> inDtoEachParcelList) throws Exception;

    // 确认收货 Confirmation of receipt
    void orderConfirmationOfReceipt(String tradeOrderId) throws Exception;
}
